// 封装axios  就是把请求处理一下
// 请求拦截器实在请求发起前做的操作   通常，添加响应头。。。
// 响应拦截器就是把后端响应的数据进行处理后再返给前端

import axios from "axios";

// 请求拦截器
axios.interceptors.request.use((cfg) => {
	// 判断本地是否有jwt
	let jwt = localStorage.getItem("jwt");
	if(jwt){
		// 如果有，按照文档要求
		// 设置请求头Authorization
		cfg.headers.Authorization=jwt;
	}
	return cfg;
});
// 响应拦截器
axios.interceptors.response.use((ret)=>{
	// 判断返回数据中是否有token
	if(ret.data.context && ret.data.context.token){
		// 能执行，就说明有token,那就把新的token重新设定
		localStorage.setItem("token",ret.data.context.token);
	}
	return  ret;
});
// 导出axios
export default axios;
